]> shimmer.witbreuk.eu Git - UltimateKEYS.git/blobdiff - autohotkey-v2.0/UltimateKEYS (for AutoHotkey v2.0).ahk
Add files via upload
[UltimateKEYS.git] / autohotkey-v2.0 / UltimateKEYS (for AutoHotkey v2.0).ahk
index a8adf4b785fc39d5671ddbe6d5d4a2fb102cb2b0..98973446986165e53de179882c1cafcce066c504 100644 (file)
@@ -1,4 +1,4 @@
-; UltimateKEYS (for AutoHotkey v2.0).ahk - 2022-06-02
+; UltimateKEYS (for AutoHotkey v2.0).ahk - 2022-09-14
 
 ; Website :  www.ultimatekeys.info (pieter-degroote.github.io/UltimateKEYS/)
 
 
 ; Website :  www.ultimatekeys.info (pieter-degroote.github.io/UltimateKEYS/)
 
@@ -20,7 +20,7 @@ KeyHistory 0      ; disables the key history (for privacy and security)
 
 SendMode "Input"  ; optimizes for faster and more reliable input
 
 
 SendMode "Input"  ; optimizes for faster and more reliable input
 
-global dkEndKeys := "{bs}{del}{esc}{home}{end}"  ; ends dead key input on specific keys
+global gEndKeys := "{bs}{del}{esc}{home}{end}"  ; ends dead key input on specific keys
 
 
 ; Compose :  Circumflex Accent (c)
 
 
 ; Compose :  Circumflex Accent (c)
@@ -212,7 +212,7 @@ cmpMacronStrokeAdd["y"] := "{u+024f}"  ; (ɏ) y with stroke
 cmpMacronStrokeAdd["Y"] := "{u+024e}"  ; (Ɏ) Y with stroke
 
 
 cmpMacronStrokeAdd["Y"] := "{u+024e}"  ; (Ɏ) Y with stroke
 
 
-; Compose :  Stroke (/)
+; Compose :  Oblique/Diagonal Stroke (/)
 
 global cmpStroke := Map()
 cmpStroke["a"] := "{u+2c65}"  ; (ⱥ) a with stroke
 
 global cmpStroke := Map()
 cmpStroke["a"] := "{u+2c65}"  ; (ⱥ) a with stroke
@@ -468,7 +468,7 @@ cmpTilde["Y"] := "{u+1ef8}"  ; (Ỹ) Y with tilde
 cmpTilde[" "] := "{u+02dc}"  ; (˜) small tilde
 
 
 cmpTilde[" "] := "{u+02dc}"  ; (˜) small tilde
 
 
-; Compose :  Hook and Latin Greek Letters (h)
+; Compose :  Hook and Horn (h)
 
 global cmpHook := Map()
 cmpHook["b"] := "{u+0253}"  ; (ɓ) b with hook
 
 global cmpHook := Map()
 cmpHook["b"] := "{u+0253}"  ; (ɓ) b with hook
@@ -483,12 +483,15 @@ cmpHook["g"] := "{u+0260}"  ; (ɠ) g with hook
 cmpHook["G"] := "{u+0193}"  ; (Ɠ) G with hook
 cmpHook["h"] := "{u+0266}"  ; (ɦ) h with hook
 cmpHook["H"] := "{u+a7aa}"  ; (Ɦ) H with hook
 cmpHook["G"] := "{u+0193}"  ; (Ɠ) G with hook
 cmpHook["h"] := "{u+0266}"  ; (ɦ) h with hook
 cmpHook["H"] := "{u+a7aa}"  ; (Ɦ) H with hook
+cmpHook["j"] := "{u+0267}"  ; (ɧ) small letter heng with hook
 cmpHook["k"] := "{u+0199}"  ; (ƙ) k with hook
 cmpHook["K"] := "{u+0198}"  ; (Ƙ) K with hook
 cmpHook["m"] := "{u+0271}"  ; (ɱ) m with hook
 cmpHook["M"] := "{u+2c6e}"  ; (Ɱ) M with hook
 cmpHook["n"] := "{u+0272}"  ; (ɲ) n with left hook
 cmpHook["N"] := "{u+019d}"  ; (Ɲ) N with left hook
 cmpHook["k"] := "{u+0199}"  ; (ƙ) k with hook
 cmpHook["K"] := "{u+0198}"  ; (Ƙ) K with hook
 cmpHook["m"] := "{u+0271}"  ; (ɱ) m with hook
 cmpHook["M"] := "{u+2c6e}"  ; (Ɱ) M with hook
 cmpHook["n"] := "{u+0272}"  ; (ɲ) n with left hook
 cmpHook["N"] := "{u+019d}"  ; (Ɲ) N with left hook
+cmpHook["o"] := "{u+01a1}"  ; (ơ) o with horn
+cmpHook["O"] := "{u+01a0}"  ; (Ơ) O with horn
 cmpHook["p"] := "{u+01a5}"  ; (ƥ) p with hook
 cmpHook["P"] := "{u+01a4}"  ; (Ƥ) P with hook
 cmpHook["q"] := "{u+024b}"  ; (ɋ) q with hook tail
 cmpHook["p"] := "{u+01a5}"  ; (ƥ) p with hook
 cmpHook["P"] := "{u+01a4}"  ; (Ƥ) P with hook
 cmpHook["q"] := "{u+024b}"  ; (ɋ) q with hook tail
@@ -497,6 +500,8 @@ cmpHook["r"] := "{u+027d}"  ; (ɽ) r with tail
 cmpHook["R"] := "{u+2c64}"  ; (Ɽ) R with tail
 cmpHook["t"] := "{u+01ad}"  ; (ƭ) t with hook
 cmpHook["T"] := "{u+01ac}"  ; (Ƭ) T with hook
 cmpHook["R"] := "{u+2c64}"  ; (Ɽ) R with tail
 cmpHook["t"] := "{u+01ad}"  ; (ƭ) t with hook
 cmpHook["T"] := "{u+01ac}"  ; (Ƭ) T with hook
+cmpHook["u"] := "{u+01b0}"  ; (ư) u with horn
+cmpHook["U"] := "{u+01af}"  ; (Ư) U with horn
 cmpHook["v"] := "{u+028b}"  ; (ʋ) v with hook
 cmpHook["V"] := "{u+01b2}"  ; (Ʋ) V with hook
 cmpHook["w"] := "{u+2c73}"  ; (ⱳ) w with hook
 cmpHook["v"] := "{u+028b}"  ; (ʋ) v with hook
 cmpHook["V"] := "{u+01b2}"  ; (Ʋ) V with hook
 cmpHook["w"] := "{u+2c73}"  ; (ⱳ) w with hook
@@ -505,49 +510,45 @@ cmpHook["y"] := "{u+01b4}"  ; (ƴ) y with hook
 cmpHook["Y"] := "{u+01b3}"  ; (Ƴ) Y with hook
 cmpHook["z"] := "{u+0225}"  ; (ȥ) z with hook
 cmpHook["Z"] := "{u+0224}"  ; (Ȥ) Z with hook
 cmpHook["Y"] := "{u+01b3}"  ; (Ƴ) Y with hook
 cmpHook["z"] := "{u+0225}"  ; (ȥ) z with hook
 cmpHook["Z"] := "{u+0224}"  ; (Ȥ) Z with hook
-cmpHook["a"] := "{u+0251}"  ; (ɑ) latin small letter alpha
-cmpHook["A"] := "{u+2c6d}"  ; (Ɑ) latin capital letter alpha
-cmpHook["e"] := "{u+025b}"  ; (ɛ) small open e (latin small epsilon)
-cmpHook["E"] := "{u+0190}"  ; (Ɛ) capital open E (latin capital epsilon)
-cmpHook["i"] := "{u+0269}"  ; (ɩ) latin small letter iota
-cmpHook["I"] := "{u+0196}"  ; (Ɩ) latin capital letter iota
-cmpHook["j"] := "{u+0263}"  ; (ɣ) latin small gamma
-cmpHook["J"] := "{u+0194}"  ; (Ɣ) latin capital gamma
-cmpHook["o"] := "{u+0254}"  ; (ɔ) small open o
-cmpHook["O"] := "{u+0186}"  ; (Ɔ) capital open O
-cmpHook["s"] := "{u+0283}"  ; (ʃ) small letter esh
-cmpHook["S"] := "{u+01a9}"  ; (Ʃ) capital letter esh
-cmpHook["u"] := "{u+028a}"  ; (ʊ) latin small letter upsilon
-cmpHook["U"] := "{u+01b1}"  ; (Ʊ) latin capital letter upsilon
-
-
-; Compose :  Horn and Other Letters (H)
-
-global cmpHorn := Map()
-cmpHorn["o"] := "{u+01a1}"  ; (ơ) o with horn
-cmpHorn["O"] := "{u+01a0}"  ; (Ơ) O with horn
-cmpHorn["u"] := "{u+01b0}"  ; (ư) u with horn
-cmpHorn["U"] := "{u+01af}"  ; (Ư) U with horn
-cmpHorn["g"] := "{u+ab36}"  ; (ꬶ) cross-tailed g
-cmpHorn["h"] := "{u+0267}"  ; (ɧ) small letter heng with hook
-cmpHorn["j"] := "{u+a727}"  ; (ꜧ) small letter heng
-cmpHorn["J"] := "{u+a726}"  ; (Ꜧ) capital letter heng
-cmpHorn["k"] := "{u+0138}"  ; (ĸ) small letter kra
-cmpHorn["s"] := "{u+017f}"  ; (ſ) small long s
-cmpHorn["S"] := "{u+1e9b}"  ; (ẛ) small long s with dot above
+
+
+; Compose :  Latin Greek Letters and Variations (l)
+
+global cmpLatinGreek := Map()
+cmpLatinGreek["a"] := "{u+0251}"  ; (ɑ) Latin small letter alpha
+cmpLatinGreek["A"] := "{u+2c6d}"  ; (Ɑ) Latin capital letter alpha
+cmpLatinGreek["c"] := "{u+ab36}"  ; (ꬶ) small letter script g with crossed-tail
+cmpLatinGreek["e"] := "{u+025b}"  ; (ɛ) small letter open e (Latin small epsilon)
+cmpLatinGreek["E"] := "{u+0190}"  ; (Ɛ) capital letter open E (Latin capital epsilon)
+cmpLatinGreek["f"] := "{u+017f}"  ; (ſ) small letter long s
+cmpLatinGreek["F"] := "{u+1e9b}"  ; (ẛ) long s with dot above
+cmpLatinGreek["g"] := "{u+0263}"  ; (ɣ) Latin small letter gamma
+cmpLatinGreek["G"] := "{u+0194}"  ; (Ɣ) Latin capital letter gamma
+cmpLatinGreek["h"] := "{u+a727}"  ; (ꜧ) small letter heng
+cmpLatinGreek["H"] := "{u+a726}"  ; (Ꜧ) capital letter heng
+cmpLatinGreek["i"] := "{u+0269}"  ; (ɩ) Latin small letter iota
+cmpLatinGreek["I"] := "{u+0196}"  ; (Ɩ) Latin capital letter iota
+cmpLatinGreek["k"] := "{u+0138}"  ; (ĸ) small letter kra
+cmpLatinGreek["o"] := "{u+0254}"  ; (ɔ) small letter open o
+cmpLatinGreek["O"] := "{u+0186}"  ; (Ɔ) capital letter open O
+cmpLatinGreek["s"] := "{u+0283}"  ; (ʃ) small letter esh
+cmpLatinGreek["S"] := "{u+01a9}"  ; (Ʃ) capital letter esh
+cmpLatinGreek["u"] := "{u+028a}"  ; (ʊ) Latin small letter upsilon
+cmpLatinGreek["U"] := "{u+01b1}"  ; (Ʊ) Latin capital letter upsilon
 
 
 ; Compose :  Turned Letters (t)
 
 global cmpTurned := Map()
 
 
 ; Compose :  Turned Letters (t)
 
 global cmpTurned := Map()
-cmpTurned["a"] := "{u+0250}"  ; (ɐ) small turned a
-cmpTurned["A"] := "{u+2c6f}"  ; (Ɐ) capital turned A
-cmpTurned["e"] := "{u+01dd}"  ; (ǝ) small turned e
-cmpTurned["E"] := "{u+018e}"  ; (Ǝ) capital reversed E
-cmpTurned["q"] := "{u+0252}"  ; (ɒ) latin small letter turned alpha
-cmpTurned["Q"] := "{u+2c70}"  ; (Ɒ) latin capital letter turned alpha
-cmpTurned["v"] := "{u+028c}"  ; (ʌ) latin small letter turned v
-cmpTurned["V"] := "{u+0245}"  ; (Ʌ) latin capital letter turned V
+cmpTurned["a"] := "{u+0250}"  ; (ɐ) Latin small letter turned a
+cmpTurned["A"] := "{u+2c6f}"  ; (Ɐ) Latin capital letter turned A
+cmpTurned["e"] := "{u+01dd}"  ; (ǝ) Latin small letter turned e
+cmpTurned["E"] := "{u+018e}"  ; (Ǝ) Latin capital letter reversed E
+cmpTurned["q"] := "{u+0252}"  ; (ɒ) Latin small letter turned alpha
+cmpTurned["Q"] := "{u+2c70}"  ; (Ɒ) Latin capital letter turned alpha
+cmpTurned["v"] := "{u+028c}"  ; (ʌ) Latin small letter turned v
+cmpTurned["V"] := "{u+0245}"  ; (Ʌ) Latin capital letter turned V
+cmpTurned["y"] := "{u+028e}"  ; (ʎ) Latin small letter turned y
 
 
 ; Compose :  Currency Symbols ($)
 
 
 ; Compose :  Currency Symbols ($)
@@ -601,59 +602,59 @@ cmpCurrency[" "] := "{u+00a4}"  ; (¤) currency sign
 ; Compose :  Greek Alphabet (g)
 
 global cmpGreekAlphabet := Map()
 ; Compose :  Greek Alphabet (g)
 
 global cmpGreekAlphabet := Map()
-cmpGreekAlphabet["a"] := "{u+03b1}"  ; (α) small alpha
-cmpGreekAlphabet["A"] := "{u+0391}"  ; (Α) capital alpha
-cmpGreekAlphabet["b"] := "{u+03b2}"  ; (β) small beta
-cmpGreekAlphabet["B"] := "{u+0392}"  ; (Β) capital beta
-cmpGreekAlphabet["v"] := "{u+03b2}"  ; (β) small beta
-cmpGreekAlphabet["V"] := "{u+0392}"  ; (Β) capital beta
-cmpGreekAlphabet["g"] := "{u+03b3}"  ; (γ) small gamma
-cmpGreekAlphabet["G"] := "{u+0393}"  ; (Γ) capital gamma
-cmpGreekAlphabet["d"] := "{u+03b4}"  ; (δ) small delta
-cmpGreekAlphabet["D"] := "{u+0394}"  ; (Δ) capital delta
-cmpGreekAlphabet["e"] := "{u+03b5}"  ; (ε) small epsilon
-cmpGreekAlphabet["E"] := "{u+0395}"  ; (Ε) capital epsilon
-cmpGreekAlphabet["z"] := "{u+03b6}"  ; (ζ) small zeta
-cmpGreekAlphabet["Z"] := "{u+0396}"  ; (Ζ) capital zeta
-cmpGreekAlphabet["h"] := "{u+03b7}"  ; (η) small eta
-cmpGreekAlphabet["H"] := "{u+0397}"  ; (Η) capital eta
-cmpGreekAlphabet["j"] := "{u+03b8}"  ; (θ) small theta
-cmpGreekAlphabet["J"] := "{u+0398}"  ; (Θ) capital theta
-cmpGreekAlphabet["i"] := "{u+03b9}"  ; (ι) small iota
-cmpGreekAlphabet["I"] := "{u+0399}"  ; (Ι) capital iota
-cmpGreekAlphabet["k"] := "{u+03ba}"  ; (κ) small kappa
-cmpGreekAlphabet["K"] := "{u+039a}"  ; (Κ) capital kappa
-cmpGreekAlphabet["l"] := "{u+03bb}"  ; (λ) small lambda
-cmpGreekAlphabet["L"] := "{u+039b}"  ; (Λ) capital lambda
-cmpGreekAlphabet["m"] := "{u+03bc}"  ; (μ) small mu
-cmpGreekAlphabet["M"] := "{u+039c}"  ; (Μ) capital mu
-cmpGreekAlphabet["n"] := "{u+03bd}"  ; (ν) small nu
-cmpGreekAlphabet["N"] := "{u+039d}"  ; (Ν) capital nu
-cmpGreekAlphabet["x"] := "{u+03be}"  ; (ξ) small xi
-cmpGreekAlphabet["X"] := "{u+039e}"  ; (Ξ) capital xi
-cmpGreekAlphabet["o"] := "{u+03bf}"  ; (ο) small omicron
-cmpGreekAlphabet["O"] := "{u+039f}"  ; (Ο) capital omicron
-cmpGreekAlphabet["p"] := "{u+03c0}"  ; (π) small pi
-cmpGreekAlphabet["P"] := "{u+03a0}"  ; (Π) capital pi
-cmpGreekAlphabet["r"] := "{u+03c1}"  ; (ρ) small rho
-cmpGreekAlphabet["R"] := "{u+03a1}"  ; (Ρ) capital rho
-cmpGreekAlphabet["s"] := "{u+03c3}"  ; (σ) small sigma
-cmpGreekAlphabet["S"] := "{u+03a3}"  ; (Σ) capital sigma
-cmpGreekAlphabet[","] := "{u+03c2}"  ; (ς) small final sigma
-cmpGreekAlphabet["t"] := "{u+03c4}"  ; (τ) small tau
-cmpGreekAlphabet["T"] := "{u+03a4}"  ; (Τ) capital tau
-cmpGreekAlphabet["u"] := "{u+03c5}"  ; (υ) small upsilon
-cmpGreekAlphabet["U"] := "{u+03a5}"  ; (Υ) capital upsilon
-cmpGreekAlphabet["y"] := "{u+03c5}"  ; (υ) small upsilon
-cmpGreekAlphabet["Y"] := "{u+03a5}"  ; (Υ) capital upsilon
-cmpGreekAlphabet["f"] := "{u+03c6}"  ; (φ) small phi
-cmpGreekAlphabet["F"] := "{u+03a6}"  ; (Φ) capital phi
-cmpGreekAlphabet["c"] := "{u+03c7}"  ; (χ) small chi
-cmpGreekAlphabet["C"] := "{u+03a7}"  ; (Χ) capital chi
-cmpGreekAlphabet["w"] := "{u+03c8}"  ; (ψ) small psi
-cmpGreekAlphabet["W"] := "{u+03a8}"  ; (Ψ) capital psi
-cmpGreekAlphabet["q"] := "{u+03c9}"  ; (ω) small omega
-cmpGreekAlphabet["Q"] := "{u+03a9}"  ; (Ω) capital omega
+cmpGreekAlphabet["a"] := "{u+03b1}"  ; (α) Greek small alpha
+cmpGreekAlphabet["A"] := "{u+0391}"  ; (Α) Greek capital alpha
+cmpGreekAlphabet["b"] := "{u+03b2}"  ; (β) Greek small beta
+cmpGreekAlphabet["B"] := "{u+0392}"  ; (Β) Greek capital beta
+cmpGreekAlphabet["v"] := "{u+03b2}"  ; (β) Greek small beta
+cmpGreekAlphabet["V"] := "{u+0392}"  ; (Β) Greek capital beta
+cmpGreekAlphabet["g"] := "{u+03b3}"  ; (γ) Greek small gamma
+cmpGreekAlphabet["G"] := "{u+0393}"  ; (Γ) Greek capital gamma
+cmpGreekAlphabet["d"] := "{u+03b4}"  ; (δ) Greek small delta
+cmpGreekAlphabet["D"] := "{u+0394}"  ; (Δ) Greek capital delta
+cmpGreekAlphabet["e"] := "{u+03b5}"  ; (ε) Greek small epsilon
+cmpGreekAlphabet["E"] := "{u+0395}"  ; (Ε) Greek capital epsilon
+cmpGreekAlphabet["z"] := "{u+03b6}"  ; (ζ) Greek small zeta
+cmpGreekAlphabet["Z"] := "{u+0396}"  ; (Ζ) Greek capital zeta
+cmpGreekAlphabet["h"] := "{u+03b7}"  ; (η) Greek small eta
+cmpGreekAlphabet["H"] := "{u+0397}"  ; (Η) Greek capital eta
+cmpGreekAlphabet["j"] := "{u+03b8}"  ; (θ) Greek small theta
+cmpGreekAlphabet["J"] := "{u+0398}"  ; (Θ) Greek capital theta
+cmpGreekAlphabet["i"] := "{u+03b9}"  ; (ι) Greek small iota
+cmpGreekAlphabet["I"] := "{u+0399}"  ; (Ι) Greek capital iota
+cmpGreekAlphabet["k"] := "{u+03ba}"  ; (κ) Greek small kappa
+cmpGreekAlphabet["K"] := "{u+039a}"  ; (Κ) Greek capital kappa
+cmpGreekAlphabet["l"] := "{u+03bb}"  ; (λ) Greek small lambda
+cmpGreekAlphabet["L"] := "{u+039b}"  ; (Λ) Greek capital lambda
+cmpGreekAlphabet["m"] := "{u+03bc}"  ; (μ) Greek small mu
+cmpGreekAlphabet["M"] := "{u+039c}"  ; (Μ) Greek capital mu
+cmpGreekAlphabet["n"] := "{u+03bd}"  ; (ν) Greek small nu
+cmpGreekAlphabet["N"] := "{u+039d}"  ; (Ν) Greek capital nu
+cmpGreekAlphabet["x"] := "{u+03be}"  ; (ξ) Greek small xi
+cmpGreekAlphabet["X"] := "{u+039e}"  ; (Ξ) Greek capital xi
+cmpGreekAlphabet["o"] := "{u+03bf}"  ; (ο) Greek small omicron
+cmpGreekAlphabet["O"] := "{u+039f}"  ; (Ο) Greek capital omicron
+cmpGreekAlphabet["p"] := "{u+03c0}"  ; (π) Greek small pi
+cmpGreekAlphabet["P"] := "{u+03a0}"  ; (Π) Greek capital pi
+cmpGreekAlphabet["r"] := "{u+03c1}"  ; (ρ) Greek small rho
+cmpGreekAlphabet["R"] := "{u+03a1}"  ; (Ρ) Greek capital rho
+cmpGreekAlphabet["s"] := "{u+03c3}"  ; (σ) Greek small sigma
+cmpGreekAlphabet["S"] := "{u+03a3}"  ; (Σ) Greek capital sigma
+cmpGreekAlphabet[","] := "{u+03c2}"  ; (ς) Greek small final sigma
+cmpGreekAlphabet["t"] := "{u+03c4}"  ; (τ) Greek small tau
+cmpGreekAlphabet["T"] := "{u+03a4}"  ; (Τ) Greek capital tau
+cmpGreekAlphabet["u"] := "{u+03c5}"  ; (υ) Greek small upsilon
+cmpGreekAlphabet["U"] := "{u+03a5}"  ; (Υ) Greek capital upsilon
+cmpGreekAlphabet["y"] := "{u+03c5}"  ; (υ) Greek small upsilon
+cmpGreekAlphabet["Y"] := "{u+03a5}"  ; (Υ) Greek capital upsilon
+cmpGreekAlphabet["f"] := "{u+03c6}"  ; (φ) Greek small phi
+cmpGreekAlphabet["F"] := "{u+03a6}"  ; (Φ) Greek capital phi
+cmpGreekAlphabet["c"] := "{u+03c7}"  ; (χ) Greek small chi
+cmpGreekAlphabet["C"] := "{u+03a7}"  ; (Χ) Greek capital chi
+cmpGreekAlphabet["w"] := "{u+03c8}"  ; (ψ) Greek small psi
+cmpGreekAlphabet["W"] := "{u+03a8}"  ; (Ψ) Greek capital psi
+cmpGreekAlphabet["q"] := "{u+03c9}"  ; (ω) Greek small omega
+cmpGreekAlphabet["Q"] := "{u+03a9}"  ; (Ω) Greek capital omega
 
 
 ; Compose :  Superscript Characters (p)
 
 
 ; Compose :  Superscript Characters (p)
@@ -728,7 +729,14 @@ cmpQuad["3"] := "{u+2001}"  ; em quad
 ; Compose :  Arrows and Pointers
 
 global cmpArrow := Map()
 ; Compose :  Arrows and Pointers
 
 global cmpArrow := Map()
-global cmpPlus := Map()
+cmpArrow["w"] := "{u+25b2}"  ; (▲) black up-pointing triangle
+cmpArrow["a"] := "{u+25c0}"  ; (◀) black left-pointing triangle
+cmpArrow["s"] := "{u+25bc}"  ; (▼) black down-pointing triangle
+cmpArrow["d"] := "{u+25b6}"  ; (▶) black right-pointing triangle
+cmpArrow["i"] := "{u+25b3}"  ; (△) white up-pointing triangle
+cmpArrow["j"] := "{u+25c1}"  ; (◁) white left-pointing triangle
+cmpArrow["k"] := "{u+25bd}"  ; (▽) white down-pointing triangle
+cmpArrow["l"] := "{u+25b7}"  ; (▷) white right-pointing triangle
 cmpArrow["1"] := "{u+2199}"  ; (↙) south west arrow
 cmpArrow["2"] := "{u+2193}"  ; (↓) downwards arrow
 cmpArrow["3"] := "{u+2198}"  ; (↘) south east arrow
 cmpArrow["1"] := "{u+2199}"  ; (↙) south west arrow
 cmpArrow["2"] := "{u+2193}"  ; (↓) downwards arrow
 cmpArrow["3"] := "{u+2198}"  ; (↘) south east arrow
@@ -749,14 +757,6 @@ cmpDoubleAcute["7"] := "{u+21d6}"  ; (⇖) north west double arrow
 cmpDoubleAcute["8"] := "{u+21d1}"  ; (⇑) upwards double arrow
 cmpDoubleAcute["9"] := "{u+21d7}"  ; (⇗) north east double arrow
 cmpDoubleAcute["0"] := "{u+21d4}"  ; (⇔) left right double arrow
 cmpDoubleAcute["8"] := "{u+21d1}"  ; (⇑) upwards double arrow
 cmpDoubleAcute["9"] := "{u+21d7}"  ; (⇗) north east double arrow
 cmpDoubleAcute["0"] := "{u+21d4}"  ; (⇔) left right double arrow
-cmpPlus["2"] := "{u+25bc}"  ; (▼) black down-pointing triangle
-cmpPlus["@"] := "{u+25bd}"  ; (▽) white down-pointing triangle
-cmpPlus["4"] := "{u+25c0}"  ; (◀) black left-pointing triangle
-cmpPlus["$"] := "{u+25c1}"  ; (◁) white left-pointing triangle
-cmpPlus["6"] := "{u+25b6}"  ; (▶) black right-pointing triangle
-cmpPlus["^"] := "{u+25b7}"  ; (▷) white right-pointing triangle
-cmpPlus["8"] := "{u+25b2}"  ; (▲) black up-pointing triangle
-cmpPlus["*"] := "{u+25b3}"  ; (△) white up-pointing triangle
 
 
 ; Compose :  Miscellaneous Symbols (s)
 
 
 ; Compose :  Miscellaneous Symbols (s)
@@ -766,19 +766,15 @@ cmpSymbols["a"] := "{u+214d}"  ; (⅍) aktieselskab
 cmpSymbols["c"] := "{u+2105}"  ; (℅) care of
 cmpSymbols["d"] := "{u+22c4}"  ; (⋄) diamond operator
 cmpSymbols["e"] := "{u+212e}"  ; (℮) estimated symbol
 cmpSymbols["c"] := "{u+2105}"  ; (℅) care of
 cmpSymbols["d"] := "{u+22c4}"  ; (⋄) diamond operator
 cmpSymbols["e"] := "{u+212e}"  ; (℮) estimated symbol
-cmpSymbols["E"] := "{u+2709}"  ; (✉) envelope
 cmpSymbols["f"] := "{u+2640}"  ; (♀) Venus symbol (female)
 cmpSymbols["f"] := "{u+2640}"  ; (♀) Venus symbol (female)
-cmpSymbols["g"] := "{u+2740}"  ; (❀) white florette
-cmpSymbols["G"] := "{u+273f}"  ; (✿) black florette
-cmpSymbols["h"] := "{u+2766}"  ; (❦) floral heart
-cmpSymbols["H"] := "{u+2767}"  ; (❧) rotated floral heart bullet
 cmpSymbols["i"] := "{u+2300}"  ; (⌀) diameter sign
 cmpSymbols["l"] := "{u+2113}"  ; (ℓ) script small l
 cmpSymbols["L"] := "{u+2112}"  ; (ℒ) Laplace transform
 cmpSymbols["m"] := "{u+2642}"  ; (♂) Mars symbol (male)
 cmpSymbols["M"] := "{u+2120}"  ; (℠) service mark
 cmpSymbols["i"] := "{u+2300}"  ; (⌀) diameter sign
 cmpSymbols["l"] := "{u+2113}"  ; (ℓ) script small l
 cmpSymbols["L"] := "{u+2112}"  ; (ℒ) Laplace transform
 cmpSymbols["m"] := "{u+2642}"  ; (♂) Mars symbol (male)
 cmpSymbols["M"] := "{u+2120}"  ; (℠) service mark
+cmpSymbols["n"] := "{u+2709}"  ; (✉) envelope
 cmpSymbols["q"] := "{u+2126}"  ; (Ω) ohm sign (backwards compatibility)
 cmpSymbols["q"] := "{u+2126}"  ; (Ω) ohm sign (backwards compatibility)
-cmpSymbols["r"] := "{u+2619}"  ; (☙) reversed rotated floral heart bullet
+cmpSymbols["r"] := "{u+211e}"  ; (℞) prescription take (Recipere)
 cmpSymbols["R"] := "{u+211e}"  ; (℞) prescription take (Recipere)
 cmpSymbols["t"] := "{u+2706}"  ; (✆) telephone location sign
 cmpSymbols["v"] := "{u+2713}"  ; (✓) check mark
 cmpSymbols["R"] := "{u+211e}"  ; (℞) prescription take (Recipere)
 cmpSymbols["t"] := "{u+2706}"  ; (✆) telephone location sign
 cmpSymbols["v"] := "{u+2713}"  ; (✓) check mark
@@ -805,6 +801,18 @@ cmpSymbols["."] := "{u+2e18}"  ; (⸘) inverted interrobang
 cmpSymbols["/"] := "{u+2e2e}"  ; (⸮) reversed question mark
 
 
 cmpSymbols["/"] := "{u+2e2e}"  ; (⸮) reversed question mark
 
 
+; Compose :  Florette and Floral Heart Symbols (f)
+
+global cmpFlorette := Map()
+cmpFlorette["r"] := "{u+2619}"  ; (☙) reversed rotated floral heart bullet
+cmpFlorette["6"] := "{u+273e}"  ; (✾) six petalled black and white florette
+cmpFlorette["b"] := "{u+273f}"  ; (✿) black florette
+cmpFlorette["w"] := "{u+2740}"  ; (❀) white florette
+cmpFlorette["8"] := "{u+2741}"  ; (❁) eight petalled outlined black florette
+cmpFlorette["f"] := "{u+2766}"  ; (❦) floral heart
+cmpFlorette["h"] := "{u+2767}"  ; (❧) rotated floral heart bullet
+
+
 ; Compose :  Playing Card Suit Symbols (S)
 
 global cmpPlayingCardSuit := Map()
 ; Compose :  Playing Card Suit Symbols (S)
 
 global cmpPlayingCardSuit := Map()
@@ -938,11 +946,11 @@ global cmpSmallN := Map()
 global cmpCapitalN := Map()
 global cmpCapitalP := Map()
 global cmpSmallR := Map()
 global cmpCapitalN := Map()
 global cmpCapitalP := Map()
 global cmpSmallR := Map()
-global cmpSemicolon := Map()
 global cmpAsterisk := Map()
 global cmpExclam := Map()
 global cmpQuestion := Map()
 global cmpParenLeft := Map()
 global cmpAsterisk := Map()
 global cmpExclam := Map()
 global cmpQuestion := Map()
 global cmpParenLeft := Map()
+global cmpPlus := Map()
 global cmpPercent := Map()
 global cmpLessThan := Map()
 global cmpGreaterThan := Map()
 global cmpPercent := Map()
 global cmpLessThan := Map()
 global cmpGreaterThan := Map()
@@ -963,11 +971,6 @@ cmpSmallR["4"] := "{u+221c}"           ; (∜) fourth root
 cmpSymbols["o"] := "{u+00a7}"          ; (§) section sign
 cmpPlayingCardSuit["o"] := "{u+00a7}"  ; (§) section sign
 cmpTurned["m"] := "{u+2122}"           ; (™) trademark symbol
 cmpSymbols["o"] := "{u+00a7}"          ; (§) section sign
 cmpPlayingCardSuit["o"] := "{u+00a7}"  ; (§) section sign
 cmpTurned["m"] := "{u+2122}"           ; (™) trademark symbol
-cmpSemicolon["b"] := "{u+2022}"        ; (•) bullet
-cmpSemicolon[";"] := "{u+2022}"        ; (•) bullet
-cmpSemicolon["t"] := "{u+2023}"        ; (‣) triangular bullet
-cmpSemicolon["h"] := "{u+2043}"        ; (⁃) hyphen bullet
-cmpSemicolon["w"] := "{u+25e6}"        ; (◦) white bullet
 cmpAcuteAccent["1"] := "{u+2032}"      ; (′) prime
 cmpAcuteAccent["2"] := "{u+2033}"      ; (″) double prime
 cmpAcuteAccent["3"] := "{u+2034}"      ; (‴) triple prime
 cmpAcuteAccent["1"] := "{u+2032}"      ; (′) prime
 cmpAcuteAccent["2"] := "{u+2033}"      ; (″) double prime
 cmpAcuteAccent["3"] := "{u+2034}"      ; (‴) triple prime
@@ -1006,6 +1009,25 @@ cmpBracketLeft["y"] := "{u+2611}"      ; (☑) ballot box with check
 cmpBracketLeft["x"] := "{u+2612}"      ; (☒) ballot box with x
 
 
 cmpBracketLeft["x"] := "{u+2612}"      ; (☒) ballot box with x
 
 
+; Compose :  Bullets and Arrowheads (;)
+
+global cmpSemicolon := Map()
+cmpSemicolon["a"] := "{u+27a4}" ; (➤) black rightwards arrowhead
+cmpSemicolon["b"] := "{u+2022}" ; (•) bullet
+cmpSemicolon[";"] := "{u+2022}" ; (•) bullet
+cmpSemicolon["d"] := "{u+27a5}" ; (➥) heavy black curved downwards and rightwards arrow
+cmpSemicolon["h"] := "{u+2043}" ; (⁃) hyphen bullet
+cmpSemicolon["-"] := "{u+2043}" ; (⁃) hyphen bullet
+cmpSemicolon["p"] := "{u+27a8}" ; (➨) heavy concave-pointed black rightwards arrow
+cmpSemicolon["q"] := "{u+27a7}" ; (➧) squat black rightwards arrow
+cmpSemicolon["r"] := "{u+27a1}" ; (➡) black rightwards arrow
+cmpSemicolon["t"] := "{u+2023}" ; (‣) triangular bullet
+cmpSemicolon["u"] := "{u+27a6}" ; (➦) heavy black curved upwards and rightwards arrow
+cmpSemicolon["w"] := "{u+25e6}" ; (◦) white bullet
+cmpSemicolon["3"] := "{u+27a2}" ; (➢) 3d top-lighted rightwards arrowhead
+cmpSemicolon["#"] := "{u+27a3}" ; (➣) 3d bottom-lighted rightwards arrowhead
+
+
 ; Compose :  Quotation Marks
 
 global cmpBracketRight := Map()
 ; Compose :  Quotation Marks
 
 global cmpBracketRight := Map()
@@ -1450,7 +1472,7 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     Send "{u+00d5}"  ; (Õ) O with tilde
 }
 
     Send "{u+00d5}"  ; (Õ) O with tilde
 }
 
->!m::Send "{u+2030}"   ; (‰) per mille sign
+>!m::Send "{u+00b5}"   ; (µ) micro sign
 >!+m::Send "{u+00b1}"  ; (±) plus-minus sign
 
 >!1::Send "{u+00a1}"   ; (¡) inverted exclamation mark
 >!+m::Send "{u+00b1}"  ; (±) plus-minus sign
 
 >!1::Send "{u+00a1}"   ; (¡) inverted exclamation mark
@@ -1509,11 +1531,11 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
 
 >!`::
 >!~:: {
 
 >!`::
 >!~:: {
-  ihA := InputHook("L1", dkEndKeys)
+  ihA := InputHook("L1", gEndKeys)
   ihA.Start()
   ihA.Wait()
 
   ihA.Start()
   ihA.Wait()
 
-  ihB := InputHook("L1", dkEndKeys)
+  ihB := InputHook("L1", gEndKeys)
   ihB.Start()
   ihB.Wait()
 
   ihB.Start()
   ihB.Wait()
 
@@ -1585,9 +1607,9 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     if cmpHook.Has(ihB.Input)
       Send cmpHook[ihB.Input]
   }
     if cmpHook.Has(ihB.Input)
       Send cmpHook[ihB.Input]
   }
-  else if (ihA.Input == "H") {
-    if cmpHorn.Has(ihB.Input)
-      Send cmpHorn[ihB.Input]
+  else if (ihA.Input == "l") {
+    if cmpLatinGreek.Has(ihB.Input)
+      Send cmpLatinGreek[ihB.Input]
   }
   else if (ihA.Input == "t") {
     if cmpTurned.Has(ihB.Input)
   }
   else if (ihA.Input == "t") {
     if cmpTurned.Has(ihB.Input)
@@ -1621,14 +1643,14 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     if cmpArrow.Has(ihB.Input)
       Send cmpArrow[ihB.Input]
   }
     if cmpArrow.Has(ihB.Input)
       Send cmpArrow[ihB.Input]
   }
-  else if (ihA.Input == "+") {
-    if cmpPlus.Has(ihB.Input)
-      Send cmpPlus[ihB.Input]
-  }
   else if (ihA.Input == "s") {
     if cmpSymbols.Has(ihB.Input)
       Send cmpSymbols[ihB.Input]
   }
   else if (ihA.Input == "s") {
     if cmpSymbols.Has(ihB.Input)
       Send cmpSymbols[ihB.Input]
   }
+  else if (ihA.Input == "f") {
+    if cmpFlorette.Has(ihB.Input)
+      Send cmpFlorette[ihB.Input]
+  }
   else if (ihA.Input == "S") {
     if cmpPlayingCardSuit.Has(ihB.Input)
       Send cmpPlayingCardSuit[ihB.Input]
   else if (ihA.Input == "S") {
     if cmpPlayingCardSuit.Has(ihB.Input)
       Send cmpPlayingCardSuit[ihB.Input]
@@ -1709,10 +1731,6 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     if cmpSmallR.Has(ihB.Input)
       Send cmpSmallR[ihB.Input]
   }
     if cmpSmallR.Has(ihB.Input)
       Send cmpSmallR[ihB.Input]
   }
-  else if (ihA.Input == ";") {
-    if cmpSemicolon.Has(ihB.Input)
-      Send cmpSemicolon[ihB.Input]
-  }
   else if (ihA.Input == "*") {
     if cmpAsterisk.Has(ihB.Input)
       Send cmpAsterisk[ihB.Input]
   else if (ihA.Input == "*") {
     if cmpAsterisk.Has(ihB.Input)
       Send cmpAsterisk[ihB.Input]
@@ -1729,6 +1747,10 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     if cmpParenLeft.Has(ihB.Input)
       Send cmpParenLeft[ihB.Input]
   }
     if cmpParenLeft.Has(ihB.Input)
       Send cmpParenLeft[ihB.Input]
   }
+  else if (ihA.Input == "+") {
+    if cmpPlus.Has(ihB.Input)
+      Send cmpPlus[ihB.Input]
+  }
   else if (ihA.Input == "%") {
     if cmpPercent.Has(ihB.Input)
       Send cmpPercent[ihB.Input]
   else if (ihA.Input == "%") {
     if cmpPercent.Has(ihB.Input)
       Send cmpPercent[ihB.Input]
@@ -1749,6 +1771,10 @@ cmpCapitalU["``"] := "{u+01db}"      ; (Ǜ) U with diaeresis and grave
     if cmpBracketLeft.Has(ihB.Input)
       Send cmpBracketLeft[ihB.Input]
   }
     if cmpBracketLeft.Has(ihB.Input)
       Send cmpBracketLeft[ihB.Input]
   }
+  else if (ihA.Input == ";") {
+    if cmpSemicolon.Has(ihB.Input)
+      Send cmpSemicolon[ihB.Input]
+  }
   else if (ihA.Input == "]") {
     if cmpBracketRight.Has(ihB.Input)
       Send cmpBracketRight[ihB.Input]
   else if (ihA.Input == "]") {
     if cmpBracketRight.Has(ihB.Input)
       Send cmpBracketRight[ihB.Input]